1 Commits

Author SHA1 Message Date
Jedd Morgan c094f3f59d Marketplace changes (#66)
* Updated Readme and Filterplugin to include readme

* Update README.md

* Bumped version

* Update README.md
2022-08-02 15:35:27 +01:00
9 changed files with 68 additions and 107 deletions
+11 -3
View File
@@ -82,13 +82,21 @@ workflows:
only: /^([0-9]+)\.([0-9]+)\.([0-9]+)(?:-\w+)?(\/all)?$/
- hold:
type: approval
filters:
branches:
ignore: /.*/
tags:
only: /^([0-9]+)\.([0-9]+)\.([0-9]+)(?:-\w+)?(\/all)?$/
requires:
- "Generate Source Archive UE4.26"
- "Generate Source Archive UE4.27"
- "Generate Source Archive UE5.0"
- marketplace-deploy:
name: "Deploy to marketplace"
filters:
branches:
ignore: /.*/
tags:
only: /^([0-9]+)\.([0-9]+)\.([0-9]+)(?:-\w+)?(\/all)?$/
requires:
- hold
- hold
+2 -2
View File
@@ -1,9 +1,9 @@
{
"FileVersion": 3,
"Version": 1,
"VersionName": "2.6.0",
"VersionName": "2.7.0",
"FriendlyName": "Speckle Unreal",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the MIT license, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the Apache License 2.0, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Category": "AEC",
"CreatedBy": "Speckle",
"CreatedByURL": "https://speckle.systems/",
+2 -2
View File
@@ -1,9 +1,9 @@
{
"FileVersion": 3,
"Version": 1,
"VersionName": "2.6.0",
"VersionName": "2.7.0",
"FriendlyName": "Speckle Unreal",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the MIT license, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the Apache License 2.0, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Category": "AEC",
"CreatedBy": "Speckle",
"CreatedByURL": "https://speckle.systems/",
+2 -2
View File
@@ -1,9 +1,9 @@
{
"FileVersion": 3,
"Version": 1,
"VersionName": "2.6.0",
"VersionName": "2.7.0",
"FriendlyName": "Speckle Unreal",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the MIT license, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the Apache License 2.0, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Category": "AEC",
"CreatedBy": "Speckle",
"CreatedByURL": "https://speckle.systems/",
+2 -7
View File
@@ -1,8 +1,3 @@
[FilterPlugin]
; This section lists additional files which will be packaged along with your plugin. Paths should be listed relative to the root plugin directory, and
; may include "...", "*", and "?" wildcards to match directories, files, and individual characters respectively.
;
; Examples:
; /README.txt
; /Extras/...
; /Binaries/ThirdParty/*.dll
/README.md
/LICENSE
+47 -20
View File
@@ -1,34 +1,61 @@
# Speckle Unreal
# Speckle for Unreal Engine
[![Twitter Follow](https://img.shields.io/twitter/follow/SpeckleSystems?style=social)](https://twitter.com/SpeckleSystems) [![Community forum users](https://img.shields.io/discourse/users?server=https%3A%2F%2Fspeckle.community&style=flat-square&logo=discourse&logoColor=white)](https://speckle.community) [![website](https://img.shields.io/badge/https://-speckle.systems-royalblue?style=flat-square)](https://speckle.systems) [![docs](https://img.shields.io/badge/docs-speckle.guide-orange?style=flat-square&logo=read-the-docs&logoColor=white)](https://speckle.guide/dev/)
[![Twitter Follow](https://img.shields.io/twitter/follow/SpeckleSystems?style=social)](https://twitter.com/SpeckleSystems) [![Community forum users](https://img.shields.io/discourse/users?server=https%3A%2F%2Fspeckle.community&style=flat-square&logo=discourse&logoColor=white)](https://speckle.community) [![website](https://img.shields.io/badge/https://-speckle.systems-royalblue?style=flat-square)](https://speckle.systems) [![docs](https://img.shields.io/badge/docs-speckle.guide-orange?style=flat-square&logo=read-the-docs&logoColor=white)](https://speckle.guide/user/unreal.html)
Plugin for Unreal Engine to import objects from Speckle v2.
Speckle makes integrating Unreal Engine with your 3D workflows even easier. </br>
This plugin connects Unreal Engine to Speckle, allowing you to receive your versioned 3D data from Speckle inside Unreal Engine,
enabling interoperable collaboration between Unreal and other Speckle connectors (Revit, Rhino, Blender, Sketchup, Unity, AutoCAD, [and more!](https://speckle.systems/features/connectors/))
Screencast of an example: https://user-images.githubusercontent.com/2551138/114720093-61403e00-9d40-11eb-8045-6e8ca656554d.mp4
https://user-images.githubusercontent.com/45512892/181620836-9c7e6a7f-4f18-48e5-a574-5eebc2abd35f.mp4
Checkout our dedicated [Tutorials and Docs](https://speckle.systems/tag/unreal/).
If you are enjoying using Speckle, don't forget to ⭐ our [GitHub repositories](https://github.com/specklesystems),
and [join our community forum](https://speckle.community/) where you can post any questions, suggestions, and discuss exciting projects!
## Notice
We support Unreal Engine 4.26, 4.27, 5.0
**Features**:
- [Receiving Speckle geometry as Actors in editor and standalone runtime](https://speckle.systems/tutorials/getting-started-with-speckle-for-unreal/).
- [Material override/substitiution](https://speckle.guide/user/unreal.html#material-converter).
- [Blueprint nodes for receiving and converting objects](https://speckle.guide/user/unreal.html#usage-blueprint).
- [Blueprint nodes for fetching stream/branch/commit/user details](https://speckle.systems/tutorials/unreal-engine-blueprint-nodes-fetch-stream-branch-commit-info-and-more/).
- [Ability to write/extend custom conversion functions in C++/BP](https://speckle.systems/tutorials/unreal-developing-custom-conversion-logic/).
**Supported Conversions**:
Speckle Type | | Native Type |
| ---: | :---: | :--- |
| [`Objects.Geometry.Mesh`](https://github.com/specklesystems/speckle-sharp/blob/main/Objects/Objects/Geometry/Mesh.cs) | → | [Static Mesh Component](https://docs.unrealengine.com/4.27/en-US/API/Runtime/Engine/Components/UStaticMeshComponent/) /<br/> [Procedural Mesh Component](https://docs.unrealengine.com/4.27/en-US/API/Plugins/ProceduralMeshComponent/UProceduralMeshComponent/) |
| [`Objects.Geometry.PointCloud`](https://github.com/specklesystems/speckle-sharp/blob/main/Objects/Objects/Geometry/Pointcloud.cs) | → | [LiDAR Point Cloud](https://docs.unrealengine.com/4.27/en-US/WorkingWithContent/LidarPointCloudPlugin/LidarPointCloudPluginReference/) |
| [`Objects.Other.BlockInstance`](https://github.com/specklesystems/speckle-sharp/blob/main/Objects/Objects/Other/Block.cs) | → | Actor with Transform |
| [`Objects.BuiltElements.View`](https://github.com/specklesystems/speckle-sharp/blob/main/Objects/Objects/BuiltElements/View.cs) | → | [Camera](https://docs.unrealengine.com/4.27/en-US/InteractiveExperiences/Framework/Camera/) |
**Supported platforms**: Windows, Linux, MacOS
*Other platforms may work, but currently untested*.
## NOTICE
**Limitations**:
- Currently no support for sending Unreal geometry to Speckle.
- Does not use the .NET or Python SDK, or the Speckle Kit based workflow, all code is in native C++/BP.
- Does not use our shared [Desktop UI 2](https://speckle.guide/user/ui2.html), only a simple editor UI is currently provided.
## How to install
* Our Unreal Connector is in an beta stage of development. Currently we only support receiving objects, and there is no UI to fetch lists of streams/commits/branches.
* We officially support Unreal Engine 4.26 and 4.27, and have experimental support for UE5.
* Does not use the Speckle Kit workflow as conversions all happen in C++.
<!--- Soon to be!
Speckle for Unreal Engine can be installed through the [Unreal Engine Marketplace](com.epicgames.launcher://ue/marketplace/product/98770ce9d4f143de8dd7882a707a6f81).
## How To Install
1. Download `speckle-unreal` repository archive from https://github.com/specklesystems/speckle-unreal/archive/refs/heads/main.zip
1. Extract the downloaded archive into your project's `Plugins` directory (if your project directory doesn't contain a directory called Plugins, you should create it)
1. Open your UE project (or restart the editor if you already have it opened). This will build the plugin in your environment.
We will eventually look to distributing the plugin officially on the Unreal Engine Marketplace but for now you'll need to install the plugin manually like this.
Alternatively, developers may prefer to install manually.-->
1. Git clone [this repo](https://github.com/specklesystems/speckle-unreal) (or download and extract the [archive zip](https://github.com/specklesystems/speckle-unreal/archive/refs/heads/main.zip)) into your project's `Plugins` directory (created as needed)
2. Open/Restart your Unreal project. This will build the plugin for your environment.
See our [docs](https://speckle.guide/user/unreal.html) for usage instructions.
## Credits
Based off the original Unreal integration for Speckle v1 by Mark and Jak which can be found here: [https://github.com/mobiusnode/SpeckleUnreal](https://github.com/mobiusnode/SpeckleUnreal).
https://user-images.githubusercontent.com/2551138/114720051-571e3f80-9d40-11eb-9099-d3394747a1d3.mp4
If you encounter build issues, try building your project from VS/Rider directly. Look at the `Saved\Logs\` files for error messages,
and don't hesitate to reach out on our [community forums](https://speckle.community) for help!
For contributing to any of our code repositories, please make sure you read the [contribution guidelines](https://github.com/specklesystems/speckle-sharp/blob/main/.github/CONTRIBUTING.md) for an overview of the best practices we try to follow.
@@ -1,22 +0,0 @@
#include "API/Operations/SendOperation.h"
// USendOperation* USendOperation::SendOperation(UObject* WorldContextObject, UBase* Base, TScriptArray<TScriptInterface<ITransport>> Transports)
// {
// USendOperation* Node = NewObject<USendOperation>();
// Node->Base = Base;
// Node->Transports = Transports;
//
// Node->RegisterWithGameInstance(WorldContextObject);
// return Node;
// }
//
// void USendOperation::Activate()
// {
// check(Transports.Num() > 0);
//
// //TODO implement
// unimplemented();
//
// }
@@ -1,47 +0,0 @@
// // Copyright 2022 AEC Systems, Licensed under the Apache License, Version 2.0
//
// #pragma once
//
// #include "CoreMinimal.h"
// #include "Kismet/BlueprintAsyncActionBase.h"
//
// #include "SendOperation.generated.h"
//
//
// class ITransport;
// class UBase;
//
// DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FSendOperationHandler, const FString&, Id, const FString&, ErrorMessage);
//
// /**
// *
// */
// UCLASS()
// class SPECKLEUNREAL_API USendOperation : public UBlueprintAsyncActionBase
// {
// GENERATED_BODY()
//
// public:
//
// UPROPERTY(BlueprintAssignable)
// FSendOperationHandler OnSendSuccessfully;
//
//
// UPROPERTY(BlueprintAssignable)
// FSendOperationHandler OnErrorAction;
//
//
// UFUNCTION(BlueprintCallable, Category = "Speckle|Operations", meta = (WorldContext = "WorldContextObject"))
// static USendOperation* SendOperation(UObject* WorldContextObject, UBase* Base, TArray<TScriptInterface<ITransport>> Transports);
//
// virtual void Activate() override;
//
// protected:
//
//
// TWeakObjectPtr<UBase> Base;
//
// TScriptArray<TScriptInterface<ITransport>> Transports;
//
//
// };
+2 -2
View File
@@ -1,9 +1,9 @@
{
"FileVersion": 3,
"Version": 1,
"VersionName": "2.6.0",
"VersionName": "2.7.0",
"FriendlyName": "Speckle Unreal",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the MIT license, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Description": "Speckle is an open source data platform for Architecture, Engineering, and Construction. It has been open sourced under the Apache License 2.0, is customizable, and available in the cloud or via a self-hosted server. It allows users to exchange data between various AEC modelling and content creation platforms.",
"Category": "AEC",
"CreatedBy": "Speckle",
"CreatedByURL": "https://speckle.systems/",